
 1000  *SAVE S.816.CALL.SEQ
 1010  *--------------------------------
 1020         .OP 65816
 1030  *--------------------------------
 1040  *      PEA address of message text
 1050  *      JSR PRINT.IT
 1060  *--------------------------------
 1070  T1     PEA MESSAGE.1
 1080         JSR PRINT.IT
 1090         PEA MESSAGE.2
 1100         JSR PRINT.IT
 1110         RTS
 1120  *--------------------------------
 1130  MESSAGE.1
 1140         .HS 8D
 1150         .AS -/MESSAGE ONE/
 1160         .HS 8D.00
 1170  MESSAGE.2
 1180         .HS 8D
 1190         .AS -/MESSAGE TWO/
 1200         .HS 8D.00
 1210  *--------------------------------
 1220  PRINT.IT
 1230         LDY #0       STARTING INDEX
 1240  .1     LDA (3,S),Y  NEXT CHARACTER OF MESSAGE
 1250         BEQ .2       ...TERMINATING $00
 1260         JSR $FDED    PRINT THE CHAR
 1270         INY
 1280         BNE .1       ...ALWAYS
 1290  .2     PLA          MOVE RETURN ADDRESS
 1300         STA 2,S      OVER THE TOP OF THE 
 1310         PLA          MESSAGE ADDRESS, PRUNING
 1320         STA 2,S      THE STACK
 1330         RTS
 1340  *--------------------------------
 1350  *      JSR PRINT.MSG
 1360  *      text of message, terminating zero
 1370  *--------------------------------
 1380  T2
 1390         JSR PRINT.MSG
 1400         .HS 8D
 1410         .AS -/MESSAGE AFTER JSR/
 1420         .HS 8D.00
 1430         JSR PRINT.MSG
 1440         .HS 8D
 1450         .AS -/ANOTHER MESSAGE/
 1460         .HS 8D.00
 1470         RTS
 1480  *--------------------------------
 1490  PRINT.MSG
 1500         LDY #1       POINT TO FIRST CHAR
 1510  .1     LDA (1,S),Y  GET NEXT CHAR 
 1520         BEQ .2       ...TERMINATING $00
 1530         JSR $FDED    PRINT THE CHAR
 1540         INY
 1550         BNE .1       ...ALWAYS
 1560  .2     TYA          ADJUST THE RETURN ADDRESS
 1570         CLC          BY ADDING THE MESSAGE LENGTH
 1580         ADC 1,S
 1590         STA 1,S
 1600         LDA #0       THE HIGH BYTE TOO
 1610         ADC 2,S
 1620         STA 2,S
 1630         RTS          RETURN TO CALLER
 1640  *--------------------------------

